/***********************************************************************
 * Module:  ControlVehicle.java
 * Author:  Administrator
 * Purpose: Defines the Class ControlVehicle
 ***********************************************************************/

package ishitong.rvims.domain.control;

import ishitong.rvims.domain.basic.VehicleType;
import ishitong.rvims.domain.basic.LicencePlateType;
import ishitong.rvims.domain.basic.LicencePlateKind;
import ishitong.rvims.domain.basic.VehicleColour;
import ishitong.rvims.domain.basic.LicencePlateColour;
import ishitong.rvims.domain.basic.VehicleInformation;
import java.lang.annotation.*;
import java.io.Serializable;

/** 车辆信息
 * 
 * @pdOid ed1509f1-1064-468d-8fa3-00c38773fe1a */
@SuppressWarnings("serial")
public class ControlVehicle implements Serializable {
   /** @pdOid 2297bc38-2b37-491a-b543-9e44efbf3b74 */
   private String id;
   /** @pdOid cf376f1a-ea07-4efd-a429-67ab44597812 */
   private String licencePlate;
   /** @pdOid 36483003-aa75-4fcc-a669-d2f259191e32 */
   private java.util.Date beginTime;
   /** @pdOid 2f6aed1e-f359-41d1-a7b8-da5d6f7b4ab8 */
   private java.util.Date endTime;
   /** @pdOid d92058c0-f48e-4931-9735-e3b131459d04 */
   private String description;
   /** @pdOid 1a35ceb4-89ac-4a41-b108-fa7534d1ffa8 */
   private String imageURL;
   /** @pdOid d86baba7-eb9c-41f6-9423-471e17fb1314 */
   private int isDel;
   
   /** @pdRoleInfo migr=no name=VehicleType assc=association1 mult=0..1 */
   private VehicleType vehicleType;
   /** @pdRoleInfo migr=no name=LicencePlateType assc=association2 mult=0..1 */
   private LicencePlateType licencePlateType;
   /** @pdRoleInfo migr=no name=LicencePlateKind assc=association3 mult=0..1 */
   private LicencePlateKind licencePlateKind;
   /** @pdRoleInfo migr=no name=VehicleColour assc=association4 mult=0..1 */
   private VehicleColour vehicleColour;
   /** @pdRoleInfo migr=no name=LicencePlateColour assc=association5 mult=0..1 */
   private LicencePlateColour licencePlateColour;
   /** @pdRoleInfo migr=no name=ControlType assc=association6 mult=0..1 */
   private ControlType controlType;
   /** @pdRoleInfo migr=no name=VehicleInformation assc=association8 mult=0..1 */
   private VehicleInformation vehicleInformation;
   /** @pdRoleInfo migr=no name=ControlTask assc=controlTaskToVehicle coll=java.util.List mult=0..* side=A */
   private java.util.List<ControlTask> listControlTask;
   
   
   /** @pdGenerated default getter */
   public java.util.List<ControlTask> getListControlTask() {
      if (listControlTask == null)
         listControlTask = new java.util.Vector<ControlTask>();
      return listControlTask;
   }
   
   /** @pdGenerated default iterator getter */
   public java.util.Iterator getIteratorListControlTask() {
      if (listControlTask == null)
         listControlTask = new java.util.Vector<ControlTask>();
      return listControlTask.iterator();
   }
   
   /** @pdGenerated default setter
     * @param newListControlTask */
   public void setListControlTask(java.util.List<ControlTask> newListControlTask) {
      removeAllListControlTask();
      for (java.util.Iterator iter = newListControlTask.iterator(); iter.hasNext();)
         addListControlTask((ControlTask)iter.next());
   }
   
   /** @pdGenerated default add
     * @param newControlTask */
   public void addListControlTask(ControlTask newControlTask) {
      if (newControlTask == null)
         return;
      if (this.listControlTask == null)
         this.listControlTask = new java.util.Vector<ControlTask>();
      if (!this.listControlTask.contains(newControlTask))
      {
         this.listControlTask.add(newControlTask);
         newControlTask.addListControlVehicle(this);      
      }
   }
   
   /** @pdGenerated default remove
     * @param oldControlTask */
   public void removeListControlTask(ControlTask oldControlTask) {
      if (oldControlTask == null)
         return;
      if (this.listControlTask != null)
         if (this.listControlTask.contains(oldControlTask))
         {
            this.listControlTask.remove(oldControlTask);
            oldControlTask.removeListControlVehicle(this);
         }
   }
   
   /** @pdGenerated default removeAll */
   public void removeAllListControlTask() {
      if (listControlTask != null)
      {
         ControlTask oldControlTask;
         for (java.util.Iterator iter = getIteratorListControlTask(); iter.hasNext();)
         {
            oldControlTask = (ControlTask)iter.next();
            iter.remove();
            oldControlTask.removeListControlVehicle(this);
         }
      }
   }
   
   /** @pdOid 742a0ae8-2f9a-4ffe-a8f3-891cea811d98 */
   public String getId() {
      return id;
   }
   
   /** @param newId
    * @pdOid da3fa0fb-dc07-4e90-a1aa-6479112ac0cd */
   public void setId(String newId) {
      id = newId;
   }
   
   /** @pdOid b5314a46-3b1e-401a-8eea-d7a996000226 */
   public String getLicencePlate() {
      return licencePlate;
   }
   
   /** @param newLicencePlate
    * @pdOid a61d92ab-f182-47dc-b7ad-4c4084781c39 */
   public void setLicencePlate(String newLicencePlate) {
      licencePlate = newLicencePlate;
   }
   
   /** @pdOid 18e1d117-9dc1-4a50-9dec-2f79324e9785 */
   public String getDescription() {
      return description;
   }
   
   /** @param newDescription
    * @pdOid 8328ff00-e8fb-4b39-96c0-405a85b19280 */
   public void setDescription(String newDescription) {
      description = newDescription;
   }
   
   /** @pdOid d788854c-c584-4eb1-8aab-4dbf54f429c1 */
   public int getIsDel() {
      return isDel;
   }
   
   /** @param newIsDel
    * @pdOid b0a3b8f7-70b3-4203-9067-d5443ec53d4d */
   public void setIsDel(int newIsDel) {
      isDel = newIsDel;
   }
   
   /** @pdOid 711aba7d-baae-4e8d-830f-c1703367e7ae */
   public java.util.Date getBeginTime() {
      return beginTime;
   }
   
   /** @param newBeginTime
    * @pdOid 7340c009-e551-4d71-af17-3a89e43b9e6e */
   public void setBeginTime(java.util.Date newBeginTime) {
      beginTime = newBeginTime;
   }
   
   /** @pdOid cbe42672-df20-41a2-ad2c-603d885ff14c */
   public java.util.Date getEndTime() {
      return endTime;
   }
   
   /** @param newEndTime
    * @pdOid 5a104610-d634-4b84-a633-a19d278614cb */
   public void setEndTime(java.util.Date newEndTime) {
      endTime = newEndTime;
   }
   
   /** @pdOid 95bc5000-a156-4498-8f14-1ca3bb6bdfc6 */
   public String getImageURL() {
      return imageURL;
   }
   
   /** @param newImageURL
    * @pdOid 1028af8b-e8e8-4d70-920f-f37fd5e58627 */
   public void setImageURL(String newImageURL) {
      imageURL = newImageURL;
   }
   
   /** @pdOid 3d3f1731-b9ad-4ac6-aa24-39b6d4d30a83 */
   public VehicleInformation getVehicleInformation() {
   	return vehicleInformation;
   }
   
   /** @param vehicleInformation
    * @pdOid 5734f2ab-fff2-4e1f-a825-29cbbd0165c4 */
   public void setVehicleInformation(VehicleInformation vehicleInformation) {
   	this.vehicleInformation = vehicleInformation;
   }
   
   /** @pdOid 9e025ab9-ab20-49fa-8d9d-16aab334a40f */
   public ControlType getControlType() {
   	return controlType;
   }
   
   /** @param controlType
    * @pdOid 49a8b9c7-265e-4734-abea-082d22d80239 */
   public void setControlType(ControlType controlType) {
   	this.controlType = controlType;
   }
   
   /** @pdOid d45cdb73-175e-4ed1-8d2d-badbf2428886 */
   public LicencePlateColour getLicencePlateColour() {
   	return licencePlateColour;
   }
   
   /** @param licencePlateColour
    * @pdOid c2a32417-76e5-47e2-91ac-06e037c24ff2 */
   public void setLicencePlateColour(LicencePlateColour licencePlateColour) {
   	this.licencePlateColour = licencePlateColour;
   }
   
   /** @pdOid b20186b5-dd27-4c87-9c13-7d88146c39fe */
   public VehicleColour getVehicleColour() {
   	return vehicleColour;
   }
   
   /** @param vehicleColour
    * @pdOid dc570ffd-b392-407a-ab6f-f249c31762a5 */
   public void setVehicleColour(VehicleColour vehicleColour) {
   	this.vehicleColour = vehicleColour;
   }
   
   /** @pdOid 8b0c67c9-422c-4ad2-908f-e2aed0423771 */
   public LicencePlateKind getLicencePlateKind() {
   	return licencePlateKind;
   }
   
   /** @param licencePlateKind
    * @pdOid e606978a-3f1b-4e7e-9115-3273b8e2beff */
   public void setLicencePlateKind(LicencePlateKind licencePlateKind) {
   	this.licencePlateKind = licencePlateKind;
   }
   
   /** @pdOid 27c1d756-26ba-4c94-92de-b257f39ecf7c */
   public LicencePlateType getLicencePlateType() {
   	return licencePlateType;
   }
   
   /** @param licencePlateType
    * @pdOid 5078053d-7014-45ab-ac1d-010be017c514 */
   public void setLicencePlateType(LicencePlateType licencePlateType) {
   	this.licencePlateType = licencePlateType;
   }
   
   /** @pdOid 2f59f2fa-1f4c-45da-aac6-861385a962fe */
   public VehicleType getVehicleType() {
   	return vehicleType;
   }
   
   /** @param vehicleType
    * @pdOid 49dd5102-6ef2-4686-bdb2-3c07fabdd6f0 */
   public void setVehicleType(VehicleType vehicleType) {
   	this.vehicleType = vehicleType;
   }

}